package 牛客算法篇;

/**
 * Created with IntelliJ IEDA.
 * Description:
 * User:86186
 * Date:2024-02-27
 * Time:17:08
 */

/**
 * 牛客算法篇:BM15 删除有序链表中重复的元素-I
 简单
 通过率：35.58% 时间限制：1秒
 空间限制：256M
 知识点
 链表
 描述
 删除给出链表中的重复元素（链表中元素从小到大有序），使链表中的所有元素都只出现一次
 例如：
 给出的链表为1→1→21→1→2,返回1→21→2.
 给出的链表为1→1→2→3→31→1→2→3→3,返回1→2→31→2→3.
 数据范围：链表长度满足 0≤n≤1000≤n≤100，链表中任意节点的值满足 ∣val∣≤100∣val∣≤100
 进阶：空间复杂度 O(1)O(1)，时间复杂度 O(n)O(n)
 示例1
 输入：
 {1,1,2}
 返回值：
 {1,2}
 */
public class deleteDuplicates {
    public static void main(String[] args) {
        ListNode a = new ListNode(1);
        ListNode b = new ListNode(1);
//        ListNode c = new ListNode(3);
//        ListNode d = new ListNode(2);
//        ListNode e = new ListNode(1);

        a.next = b;
//        b.next = c;
//        c.next = d;
//        d.next = e;
        deleteDuplicates(a);

    }

    public static ListNode deleteDuplicates (ListNode head) {
        // write code here
        // write code here
        if(head == null || head.next == null){
            return head;
        }
        ListNode cur = head.next;
        ListNode pre = head;
        while(cur != null){
            if (pre.val == cur.val){
                pre.next = cur.next;
                cur = cur.next;
            }else{
                pre = pre.next;
                cur = cur.next;
            }

        }
        return head;
    }
}
